﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Runtime.Serialization;

namespace ASPItalia.ModelVirtualCasting.WCF.Contracts
{
    [DataContract(Namespace = "http://schemas.aspitalia.com/ModelVirtualCasting/Services/Multimedia")]
    [KnownType(typeof(Image))]
    [KnownType(typeof(Video))]
    public class Multimedia : IExtensibleDataObject
    {

        [DataMember(Name = "FileName", Order = 0, IsRequired = true)]
        public String FileName { get; set; }

        #region IExtensibleDataObject Members

        public ExtensionDataObject ExtensionData
        {
            get;
            set;
        }

        #endregion
    }

    [DataContract(Namespace = "http://schemas.aspitalia.com/ModelVirtualCasting/Services/Image")]
    public class Image : Multimedia
    {
    }

    [DataContract(Namespace = "http://schemas.aspitalia.com/ModelVirtualCasting/Services/Video")]
    public class Video : Multimedia
    {
    }
}
